package pers.fjl.test.dao;

import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import org.apache.ibatis.annotations.Update;
import pers.fjl.common.po.Role;
import pers.fjl.common.vo.UserItem;
import org.apache.ibatis.annotations.Select;
import pers.fjl.common.po.User;
import org.springframework.stereotype.Repository;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;

import java.util.List;

@Repository
public interface UserDao extends BaseMapper<User> {

    /**
     * 查询用户档案
     *
     * @param page
     * @param wrapper
     * @return list
     */
//    @Select("SELECT user.id,user.nickname,user.name,user.create_time,user.last_time" +
//            ",sys_role.role_name,sys_role.remark FROM user,sys_role WHERE user.role_id=sys_role.role_id")
    @Select("SELECT id,create_time FROM user")
    List<UserItem> getUserItem(Page page, QueryWrapper<User> wrapper);

    /**
     * 根据用户名查询用户
     *
     * @param page
     * @param queryString
     * @return list
     */
    @Select("SELECT user.id,user.nickname,user.name,user.create_time,user.last_time" +
            ",sys_role.role_name,sys_role.remark FROM user,sys_role WHERE user.role_id=sys_role.role_id and user.nickname=#{queryString}")
    List<UserItem> SearchByUsername(Page<User> page, String queryString);

    @Update("UPDATE user set password=#{hashPass} where id=#{i} ")
    void updatePassword(String i,String hashPass);
}
